Adding Value
Let's explore how you can add value to your company as a junior developer.
Do good work#
As long as you’ve got your basic responsibilities down, you’re going to want to say yes to whatever comes your way. If you bite off more than you can chew, it is your manager/team’s responsibility to help you out or to step in if things start going south. At the same time, make sure you do good work with the stuff you have committed to. The work that you do is ultimately your personal brand.
Come out of your comfort zone#
You might feel intimidated doing things beyond your comfort zone, but you’re going to have to get good at it to grow. Fight impostor syndrome by saying, “This is what I do.”
Try to be a work sink#
Try to be a work sink instead of a work generator. Proactively ask managers and product owners what you can take off their plate. Your job is to support them; when they look good, you look good. Ryan Holiday calls this the Canvas Strategy. Harry Truman puts it more pithily:
“It is amazing what you can accomplish if you do not care who gets the credit.”
Of course, if you feel you are being exploited, stop.
Show initiative#
If you just wait around when you run out of things to do, you look lazy and unmotivated. Show initiative; there are always more things to do.
It is quite often that doing the things nobody else wants to do ends up making you indispensable because:
-
It has to be done.
-
Nobody else wants to do it.
If you figure out a clever way of doing it, you could even make a career (or startup) out of it!
📝 Important caveat: Don’t let people take advantage of you. Pick your projects strategically if you can (see the Strategy section), and when you have wins, market yourself internally and externally.
Volunteer to write tests#
Tests are the most common example of this. In fact, a really great way to start a new job is to volunteer to write tests.
There are never enough tests#
There’s always something more to test, tests can be faster, or you can remove/replace unhelpful tests.
Coworkers will be grateful#
Tests aren’t user-facing, so they are often the place corners get cut. Yet, everyone understands the value of testing.
Learn the codebase#
To test the code, you’ll have to understand where to test the code. This is an art, not a science. If you blanket the codebase in unit tests, you’ll have a lot of superficial code coverage. However, you’ll also have a lot to refactor when any minor detail is changed, while also duplicating a lot of framework tests. After the famous Michael Pollan quote, the prevailing advice is to “Write tests. Not too many. Mostly integration.”
You can’t break anything#
You can’t break anything - in fact, quite the opposite - tests make code more resilient!
You will learn new things#
You will learn things you didn’t know about how your product works. When you interact with the product, you only see what a user likes. When you look at the code, you will see all the edge cases and the ugly, hacky code that made it happen!
People have used this strategy at Netflix, Ionic, PayTM, and more to get great starts at their companies, and you should too.
Your code only has value in the context of the business you work in. Understand the product end-to-end as an end-user. Do not assume things, ask questions, and get things cleared when in doubt.
Ask for what you want#
As you gain a better knowledge of your company’s strategic priorities, complemented by better self-knowledge of what you prefer and excel in, you can progress from reactive to proactive in your project choice. The job you have right now doesn’t have to be the career you end up with, and it is much easier to switch focuses internally than as a job seeker.
Actively seek out cross-functional exposure to understand how other developers in your company work and put yourself in the path of key projects that will have a major impact on your company. Here are some other career development prompts you can use in 1-on-1’s with your manager.
Making Mistakes
Growing Your Knowledge